package com.ruoyi.ams.domain;


import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.ruoyi.common.core.annotation.Excel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.List;

/**
 * 清理报废对象 ams_asset_scrap
 * 
 * @author yfkj
 * @date 2022-05-16
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class AmsAssetScrap
{
    private static final long serialVersionUID = 1L;
    /** 清理报废表主键 */
    @TableField(exist = true)
    @TableId(type= IdType.AUTO)
    @ApiModelProperty(value =  "${comment}")
    private Long scrapId;
    /** 流程表主键 */
    @Excel(name = "流程表主键")
    @TableField(exist = true)
    @ApiModelProperty(value =  "流程表主键")
    private Long processId;
    /** 清理单号 */
    @Excel(name = "清理单号")
    @TableField(exist = true)
    @ApiModelProperty(value =  "清理单号")
    private String scrapSn;

    /** 清理日期 */
    @Excel(name = "清理日期")
    @TableField(exist = true)
    @ApiModelProperty(value =  "清理日期")
    private Long scrapTime;
    @TableField(exist = false)
    @ApiModelProperty(value =  "清理日期字符串")
    private String scrapTimeStr;

    /** 清理人主键 */
    @Excel(name = "清理人主键")
    @TableField(exist = true)
    @ApiModelProperty(value =  "清理人主键")
    private Long scrapUserId;
    @TableField(exist = false)
    @ApiModelProperty(value =  "清理人姓名")
    private String scrapUserName;

    /** 业务所属部门主键 */
    @Excel(name = "业务所属部门主键")
    @TableField(exist = true)
    @ApiModelProperty(value =  "业务所属部门主键")
    private Long businessDeptId;
    @TableField(exist = false)
    @ApiModelProperty(value =  "业务所属部门名称")
    private String businessDeptName;

    /** 清理说明 */
    @Excel(name = "清理说明")
    @TableField(exist = true)
    @ApiModelProperty(value =  "清理说明")
    private String scrapExplain;
    /** 状态 */
    @Excel(name = "状态")
    @TableField(exist = true)
    @ApiModelProperty(value =  "状态")
    private String status;

    @TableField(exist = false)
    @ApiModelProperty(value =  "报废资产ID的数组")
    private Long[] assetIds;

    @TableField(exist = false)
    private List<String> assetNames;

    public static final String SCRAP_ID="scrap_id";
    public static final String PROCESS_ID="process_id";
    public static final String SCRAP_SN="scrap_sn";
    public static final String SCRAP_TIME="scrap_time";
    public static final String SCRAP_USER_ID="scrap_user_id";
    public static final String BUSINESS_DEPT_ID="business_dept_id";
    public static final String SCRAP_EXPLAIN="scrap_explain";
    public static final String STATUS="status";
    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("scrapId", getScrapId())
            .append("processId", getProcessId())
            .append("scrapSn", getScrapSn())
            .append("scrapTime", getScrapTime())
            .append("scrapUserId", getScrapUserId())
            .append("businessDeptId", getBusinessDeptId())
            .append("scrapExplain", getScrapExplain())
            .append("status", getStatus())
            .toString();
    }
}
